/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package proms.net.modelo.comando;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import proms.net.conexao.Conexao;
import proms.net.modelo.bean.Cliente;
import proms.net.modelo.bean.Endereco;
import proms.net.modelo.dao.ClienteDAO;

/**
 *
 * @author Harley
 */
public class CadastrarCliente implements InterfaceComando {
    private  ClienteDAO clienteDAO;

    public CadastrarCliente(ClienteDAO clienteDAO) {
        this.clienteDAO = clienteDAO;
    }
     

    public String execute(HttpServletRequest request, HttpServletResponse response) {

       Cliente cliente = new Cliente();
       Endereco endereco = new Endereco();

       cliente.setLogin(request.getParameter("login"));
       cliente.setSenha(request.getParameter("senha"));
       cliente.setTipoUsuario("C");
       cliente.setAcessoTotal("N");
       cliente.setEmail(request.getParameter("email"));
       cliente.setNome(request.getParameter("nome"));
       cliente.setRg(request.getParameter("rg"));
       cliente.setSexo(request.getParameter("sexo"));
       cliente.setCpf(request.getParameter("cpf"));
       cliente.setCnpj(request.getParameter("cnpj"));
       cliente.setInscricaoEstadual(request.getParameter("ie"));
       cliente.setFoneCel(request.getParameter("fonecel"));
       cliente.setFoneResidencia(request.getParameter("foneresidencia"));
      // cliente.setNascimento(request.getParameter("datanasc"));
       cliente.setNacionalidade(request.getParameter("nacionalidade"));
       cliente.setEstadoCivil(request.getParameter("estadocivil"));
       cliente.setProfissao(request.getParameter("profissao"));
       cliente.setMae(request.getParameter("mae"));
       endereco.setRua(request.getParameter("logradouro"));
       endereco.setBairro(request.getParameter("bairro"));
       endereco.setNumero(Integer.parseInt(request.getParameter("numero")));
       endereco.setCep(request.getParameter("cep"));
       endereco.setCidade(request.getParameter("cidade"));
       endereco.setUf(request.getParameter("uf"));
       endereco.setPais(request.getParameter("pais"));
       cliente.setEndereco(endereco);

        
       try {
           clienteDAO.salvarCli(cliente); 
           request.setAttribute("mensagemCli", "Cliente "+ cliente.getNome() +" cadastrado com sucesso");
        } catch (SQLException ex) {
            ex.printStackTrace();
            request.setAttribute("mensagemCli", "Ocorreu um erro na gravação do dados! Erro: "+ex.getMessage());
        }catch (NumberFormatException e) {
			request.setAttribute("mensagemCli", "Valor inválido: "+e.getMessage());
    }
        return "cadastroClienteUsuario.jsp";
}
}
